home *** CD-ROM | disk | FTP | other *** search
/ Delphi Informant Complete 1995 - 2000 / Delphi Informant Complete 1995 to 2000.iso / Delphi Informant Magazine Complete Works SOURCE CODE 1998.rar / 1998 / Feb / di9802dm / treeview / TreeViewX_TLB.pas < prev    next >
Pascal/Delphi Source File  |  1997-10-31  |  10KB  |  312 lines

  1. unit TreeViewX_TLB;
  2.  
  3. { This file contains pascal declarations imported from a type library.
  4.   This file will be written during each import or refresh of the type
  5.   library editor.  Changes to this file will be discarded during the
  6.   refresh process. }
  7.  
  8. { TreeViewX Library }
  9. { Version 1.0 }
  10.  
  11. { Conversion log:
  12.   Hint: Class is not registered.  Ambient properties cannot be determined.
  13.  }
  14.  
  15. interface
  16.  
  17. uses Windows, ActiveX, Classes, Graphics, OleCtrls, StdVCL;
  18.  
  19. const
  20.   LIBID_TreeViewX: TGUID = '{A79D1C3C-3DC8-11D1-82D6-006097319291}';
  21.  
  22. const
  23.  
  24. { TxBorderStyle }
  25.  
  26.   bsNone = 0;
  27.   bsSingle = 1;
  28.  
  29. { TxDragMode }
  30.  
  31.   dmManual = 0;
  32.   dmAutomatic = 1;
  33.  
  34. { TxSortType }
  35.  
  36.   stNone = 0;
  37.   stData = 1;
  38.   stText = 2;
  39.   stBoth = 3;
  40.  
  41. { TxMouseButton }
  42.  
  43.   mbLeft = 0;
  44.   mbRight = 1;
  45.   mbMiddle = 2;
  46.  
  47. const
  48.  
  49. { Component class GUIDs }
  50.   Class_TreeViewX: TGUID = '{A79D1C3E-3DC8-11D1-82D6-006097319291}';
  51.  
  52. type
  53.  
  54. { Forward declarations: Interfaces }
  55.   ITreeViewX = interface;
  56.   ITreeViewXDisp = dispinterface;
  57.   ITreeViewXEvents = dispinterface;
  58.  
  59. { Forward declarations: CoClasses }
  60.   TreeViewX = ITreeViewX;
  61.  
  62. { Forward declarations: Enums }
  63.   TxBorderStyle = TOleEnum;
  64.   TxDragMode = TOleEnum;
  65.   TxSortType = TOleEnum;
  66.   TxMouseButton = TOleEnum;
  67.  
  68. { Dispatch interface for TreeView Object }
  69.  
  70.   ITreeViewX = interface(IDispatch)
  71.     ['{A79D1C3D-3DC8-11D1-82D6-006097319291}']
  72.     function Get_BorderStyle: TxBorderStyle; safecall;
  73.     procedure Set_BorderStyle(Value: TxBorderStyle); safecall;
  74.     function Get_Color: TColor; safecall;
  75.     procedure Set_Color(Value: TColor); safecall;
  76.     function Get_Ctl3D: WordBool; safecall;
  77.     procedure Set_Ctl3D(Value: WordBool); safecall;
  78.     function Get_Enabled: WordBool; safecall;
  79.     procedure Set_Enabled(Value: WordBool); safecall;
  80.     function Get_Font: Font; safecall;
  81.     procedure Set_Font(const Value: Font); safecall;
  82.     function Get_HideSelection: WordBool; safecall;
  83.     procedure Set_HideSelection(Value: WordBool); safecall;
  84.     function Get_Indent: Integer; safecall;
  85.     procedure Set_Indent(Value: Integer); safecall;
  86.     function Get_ReadOnly: WordBool; safecall;
  87.     procedure Set_ReadOnly(Value: WordBool); safecall;
  88.     function Get_ShowLines: WordBool; safecall;
  89.     procedure Set_ShowLines(Value: WordBool); safecall;
  90.     function Get_ShowRoot: WordBool; safecall;
  91.     procedure Set_ShowRoot(Value: WordBool); safecall;
  92.     function Get_SortType: TxSortType; safecall;
  93.     procedure Set_SortType(Value: TxSortType); safecall;
  94.     function Get_Visible: WordBool; safecall;
  95.     procedure Set_Visible(Value: WordBool); safecall;
  96.     function Get_ShowButtons: WordBool; safecall;
  97.     procedure Set_ShowButtons(Value: WordBool); safecall;
  98.     function Get_RightClickSelect: WordBool; safecall;
  99.     procedure Set_RightClickSelect(Value: WordBool); safecall;
  100.     procedure AddRoot(Index: Integer; const S: WideString); safecall;
  101.     procedure AddChild(RootIndex, Index: Integer; const S: WideString); safecall;
  102.     function AlphaSort: WordBool; safecall;
  103.     procedure Delete; safecall;
  104.     procedure FullCollapse; safecall;
  105.     procedure FullExpand; safecall;
  106.     procedure LoadFromFile(const FileName: WideString); safecall;
  107.     procedure SaveToFile(const FileName: WideString); safecall;
  108.     function IsEditing: WordBool; safecall;
  109.     property BorderStyle: TxBorderStyle read Get_BorderStyle write Set_BorderStyle;
  110.     property Color: TColor read Get_Color write Set_Color;
  111.     property Ctl3D: WordBool read Get_Ctl3D write Set_Ctl3D;
  112.     property Enabled: WordBool read Get_Enabled write Set_Enabled;
  113.     property Font: Font read Get_Font write Set_Font;
  114.     property HideSelection: WordBool read Get_HideSelection write Set_HideSelection;
  115.     property Indent: Integer read Get_Indent write Set_Indent;
  116.     property ReadOnly: WordBool read Get_ReadOnly write Set_ReadOnly;
  117.     property ShowLines: WordBool read Get_ShowLines write Set_ShowLines;
  118.     property ShowRoot: WordBool read Get_ShowRoot write Set_ShowRoot;
  119.     property SortType: TxSortType read Get_SortType write Set_SortType;
  120.     property Visible: WordBool read Get_Visible write Set_Visible;
  121.     property ShowButtons: WordBool read Get_ShowButtons write Set_ShowButtons;
  122.     property RightClickSelect: WordBool read Get_RightClickSelect write Set_RightClickSelect;
  123.   end;
  124.  
  125. { DispInterface declaration for Dual Interface ITreeViewX }
  126.  
  127.   ITreeViewXDisp = dispinterface
  128.     ['{A79D1C3D-3DC8-11D1-82D6-006097319291}']
  129.     property BorderStyle: TxBorderStyle dispid 1;
  130.     property Color: TColor dispid 2;
  131.     property Ctl3D: WordBool dispid 3;
  132.     property Enabled: WordBool dispid 5;
  133.     property Font: Font dispid 6;
  134.     property HideSelection: WordBool dispid 7;
  135.     property Indent: Integer dispid 8;
  136.     property ReadOnly: WordBool dispid 9;
  137.     property ShowLines: WordBool dispid 11;
  138.     property ShowRoot: WordBool dispid 12;
  139.     property SortType: TxSortType dispid 13;
  140.     property Visible: WordBool dispid 14;
  141.     property ShowButtons: WordBool dispid 15;
  142.     property RightClickSelect: WordBool dispid 16;
  143.     procedure AddRoot(Index: Integer; const S: WideString); dispid 20;
  144.     procedure AddChild(RootIndex, Index: Integer; const S: WideString); dispid 21;
  145.     function AlphaSort: WordBool; dispid 22;
  146.     procedure Delete; dispid 23;
  147.     procedure FullCollapse; dispid 24;
  148.     procedure FullExpand; dispid 25;
  149.     procedure LoadFromFile(const FileName: WideString); dispid 26;
  150.     procedure SaveToFile(const FileName: WideString); dispid 27;
  151.     function IsEditing: WordBool; dispid 28;
  152.   end;
  153.  
  154.   ITreeViewXEvents = dispinterface
  155.     ['{A79D1C4D-3DC8-11D1-82D6-006097319291}']
  156.     procedure OnClick; dispid 3;
  157.     procedure OnDblClick; dispid 4;
  158.     procedure OnKeyPress(var Key: Smallint); dispid 5;
  159.   end;
  160.  
  161. { TreeViewObject }
  162.  
  163.   TTreeViewX = class(TOleControl)
  164.   private
  165.     FIntf: ITreeViewX;
  166.     function GetControlInterface: ITreeViewX;
  167.   protected
  168.     procedure CreateControl;
  169.     procedure InitControlData; override;
  170.     function GetTOleEnumProp(Index: Integer): TOleEnum;
  171.     procedure SetTOleEnumProp(Index: Integer; Value: TOleEnum);
  172.   public
  173.     procedure AddRoot(Index: Integer; const S: WideString);
  174.     procedure AddChild(RootIndex, Index: Integer; const S: WideString);
  175.     function AlphaSort: WordBool;
  176.     procedure Delete;
  177.     procedure FullCollapse;
  178.     procedure FullExpand;
  179.     procedure LoadFromFile(const FileName: WideString);
  180.     procedure SaveToFile(const FileName: WideString);
  181.     function IsEditing: WordBool;
  182.     property ControlInterface: ITreeViewX read GetControlInterface;
  183.   published
  184.     property BorderStyle: TxBorderStyle index 1 read GetTOleEnumProp write SetTOleEnumProp stored False;
  185.     property Color: TColor index 2 read GetTColorProp write SetTColorProp stored False;
  186.     property Ctl3D: WordBool index 3 read GetWordBoolProp write SetWordBoolProp stored False;
  187.     property Enabled: WordBool index 5 read GetWordBoolProp write SetWordBoolProp stored False;
  188.     property Font: TFont index 6 read GetTFontProp write SetTFontProp stored False;
  189.     property HideSelection: WordBool index 7 read GetWordBoolProp write SetWordBoolProp stored False;
  190.     property Indent: Integer index 8 read GetIntegerProp write SetIntegerProp stored False;
  191.     property ReadOnly: WordBool index 9 read GetWordBoolProp write SetWordBoolProp stored False;
  192.     property ShowLines: WordBool index 11 read GetWordBoolProp write SetWordBoolProp stored False;
  193.     property ShowRoot: WordBool index 12 read GetWordBoolProp write SetWordBoolProp stored False;
  194.     property SortType: TxSortType index 13 read GetTOleEnumProp write SetTOleEnumProp stored False;
  195.     property Visible: WordBool index 14 read GetWordBoolProp write SetWordBoolProp stored False;
  196.     property ShowButtons: WordBool index 15 read GetWordBoolProp write SetWordBoolProp stored False;
  197.     property RightClickSelect: WordBool index 16 read GetWordBoolProp write SetWordBoolProp stored False;
  198.   end;
  199.  
  200. procedure Register;
  201.  
  202. implementation
  203.  
  204. uses ComObj;
  205.  
  206. procedure TTreeViewX.InitCo